/*
* Copyright (C) 2010, Jared Jennings <jaredljennings@gmail.com>
*
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or
* without modification, are permitted provided that the following
* conditions are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
using System;
using System.Diagnostics;
namespace org.jaredjennings.mysshmenu
{
	public class RemoteConnCmd
	{
		private static RemoteConnCmd instance;
		
		public RemoteConnCmd ()
		{
		}
		public static RemoteConnCmd GetInstance()
		{
			if(instance == null)
			{
				instance = new RemoteConnCmd();
			}

			return instance;
		}			
		public void launchRemoteConnection(HostObj hostObj) {
				
	        Process process = new Process();
	        process.StartInfo.UseShellExecute = false;
	        process.StartInfo.RedirectStandardOutput = true;
	        process.StartInfo.RedirectStandardError = true;
	        process.StartInfo.CreateNoWindow = true;
	        process.StartInfo.FileName = "rdesktop";
	        process.StartInfo.Arguments = hostObj.ADDRESS;
	       
			Logger.Info ("Remote Connection", "Attempting to connect to " + process.StartInfo.FileName);
	        process.Start();
		}		
	}
}

